广告预缓存功能
简介
聚合SDK提供广告的预缓存功能:在合适时机(广告展示或关闭)来进行当前广告位的预加载,以满足媒体的使用场景。
注意事项
①首次预缓存功能(调用preload接口)最早时机:SDK初始化完成后,该时机与开屏广告加载的时机非常近,因此不建议开屏广告用preload接口提前加载。 ②可能的冲突说明:不建议开发者在已使用自身预缓存机制的应用中开启聚合预缓存,可能会造成逻辑冲突。 ③平台开关控制全部时机:平台上打开“预缓存”开关、且有传入preload接口参数时,默认3个时机的预缓存都会开启;如平台上打开“预缓存”开关、但无传入preload接口参数时,默认开启show、close后这2个时机的预缓存。
支持ADN
聚合SDK目前支持的所有ADN,CSJ、Gdt、admob、Sigmob、Mintegral、KS、Baidu、Klevin。 广告位维度的预缓存,触发时机主要分为广告展示和广告关闭时机。分两个时机的原因主要是:某些adn在展示的时候不支持再去加载下一条广告。故,这些adn的预缓存时机安排到了广告关闭时机。除以下ADN在广告关闭时触发,其他ADN都是在广告展示后触发:
- Mintegral
- UnityAds
- Baidu
- Sigmob
- Klevin
首次预缓存功能
📢:首次预请求使用的广告加载配置要与后续发起请求的配置设置完全一致,否则会导致无法命中预缓存。
参数 | 说明 |
---|---|
infos | 预加载广告list |
concurrent | 并行加载的广告位数,默认值为2,合法值为[1,20] |
interval | 时间间隔,默认值为2s,合法值为[1,10] |
以插全屏/激励视频广告调用方法为例:
// 聚合维度首次预缓存
- (void)useMediationPreload {
CloooudAdSlot *adslot1 = [[CloooudAdSlot alloc]init];
adslot1.ID = Cloooud_reward_ID;
CloooudRewardedVideoModel *model = [[CloooudRewardedVideoModel alloc] init];
model.userId = @"123";
CloooudRewardedVideoAd *rewardedVideoAd = [[CloooudRewardedVideoAd alloc] initWithSlot:adslot1 rewardedVideoModel:model];
CloooudNativeExpressFullscreenVideoAd *fullscreenAd = [[CloooudNativeExpressFullscreenVideoAd alloc] initWithSlotID:Cloooud_newInterstitial_ID];
[CloooudAdSDKManager.mediation preloadAdsWithInfos:@[rewardedVideoAd, fullscreenAd] andInterval:2 andConcurrent:1];
}